package cn.broadsense.biz.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 采集任务实体
 *
 * @author: pengxin
 * @create: 2023-09-12 14:48
 * @Version 1.0
 **/
@ApiModel("采集任务实体")
@Data
public class CollectDataTaskVo implements Serializable {

    private static final long serialVersionUID = 8433003292681004291L;

    @ApiModelProperty("任务名称")
    @NotBlank(message = "任务名称不能为空")
    private String name;

    /**
     * 任务描述
     */
    @ApiModelProperty("任务描述")
    @NotBlank(message = "任务描述不能为空")
    private String describeInfo;

    /**
     * 采集员用户id
     */
    @ApiModelProperty("采集员用户id")
    @NotNull(message = "采集员不能为空")
    private Long collectUserId;
    @ApiModelProperty("任务结束时间")
    @NotNull(message = "任务结束时间不能为空")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    @ApiModelProperty("备注")
    private String remarks;
    @ApiModelProperty("点位列表")
    @NotNull(message = "点位列表不能为空")
    private List<Long> channelIds;

    /**
     * 采集员用户名称
     */
    @ApiModelProperty("采集员用户名称")
    private String collectUserName;

    /**
     * 采集人员区域id
     */
    @ApiModelProperty("采集人员区域id")
    private Long collectUserDeptId;

    /**
     * 采集人员区域名称
     */
    @ApiModelProperty("采集人员区域名称")
    private String collectUserDeptName;

    private Long id;
}
